**Перенос**  **Linux**  **на меньший диск**

В ролике рассказываю, что есть куча удобных способов, и описанный в этом документе способ годится если изначально линукс был поставлен с глупым разбиением дисков.

1. **1)**Сразу отключаю selinux: редактирую **/etc/sysconfig/selinux** ставя там _disabled_ и перезагружаюсь.

1. **2)**Смотрим существующие диски и разделы: **fdisk** _-_ **l**

Смотрим если есть PV (LVM): **pvs**

Смотрим если есть LV (LVM): **lvs**

Смотрим существующие подключенные файловые системы: **cat**  **/**** etc ****/**** fstab**

Смотрим занятое место на разделах: **df**  **-h**

1. **3)**Подключаю новый диск и создаю на нем разделы **fdisk**  **/**** dev ****/**** sdb** _(дальше уже командами_ _fdisk__)_

- --создаю новый раздел для boot (как на старом диске);
- --создаю новый раздел под lvm (как на старом диске);
- --могу создать раздел со swap, как на старом диске, но я люблю swap файлами.

Раздел под boot сразу могу форматнуть, там нет никаких LVM **mkfs****. ****ext**** 4 / ****dev**** / ****sdb**** 1**

1. **4)**Создаем LVM и файловую систему (чтоб новый диск по логике разбиения походил на старый). В принципе можно никаких LVM в новой системе не создавать, и просто кинуть все что нужно на второй раздел, но лучше сделать по-человечески с lvm.

**pvcreate /dev/sdb2**

**pvs**

**vgcreate centos /dev/sdb2**

**vgs**

**lvcreate -l 100%FREE -n root centos**

**lvs**

**mkfs.xfs /dev/mapper/centos-root**

1. **5)**Создаю директории для удобства переноса данных: **mkdir**  **/**** old **** / ****new**

1. **6)**Командой **mount** смотрю что куда было подключено и монтирую по очереди, затем копирую данные, например:

**mount /dev/sda1 /old**

**mount /dev/sdb1 /new**

**rsync -av /old/ /new/**

**umount**  **/**** old**

**umount**  **/**** new**

Повторяю для следующего раздела (или тома) и т.д.

1. **7)**Монтирую новый корень **mount**  **/**** dev ****/**** mapper ****/**** centos ****-**** root **** / ****new** и правлю новый **/**** new ****/**** etc ****/**** fstab**

1. **8)**Монтирую новый boot и еще ряд директорий:

**mount /dev/sdb1 /new/boot**

**mount --bind /dev /new/dev**

**mount --bind /sys /new/sys**

**mount --bind /proc /new/proc**

1. **9)**Делаю **chroot**** /new**

1. **10)**Правлю **/**** etc ****/**** default ****/**** grub**согласно новым настройкам разбиения дисков

1. **11)**Создаю новый конфиг граба **grub**** - ****makeconfig**  **–**** o **** / ****boot**** / ****grub**** 2/ ****grub****. ****cfg**

1. **12)**Устанавливаю загрузчик **grub**** - ****install**  **/**** dev ****/**** sdb**

1. **13)**Готово. Можно выключать машину, отключать старый диск и пробовать грузиться с нового.



P.S. В видео мы немного дебажили:

1. **1)**Редактировали параметры загрузки ОС: искали строку с ядром и меняли там _ro_ _на rw init=/sysroot/bin/bash_
2. **2)**После старта **c**** hroot /sysroot/**
3. **3)**Смотрелилоги **/var/log/audit/audit.log**
4. **4)**   Отключилипристартеселинукс **: kernel /vmlinuz-2.6.32-279.el6.x86\_64 root=/dev/md3 selinux=1**